1. Field of the Invention
This invention relates to an adapter circuit for a keyboard, and in particular, it relates to an adapter circuit for a keyboard which produces USB (universal serial bus) keyboard signals while supporting N-key rollover (NKRO).
2. Description of the Related Art
Rollover refers to the ability of a computer keyboard to correctly interpret multiple simultaneous keystrokes. During normal typing on a conventional computer keyboard, only one key is typically pressed at any given time. When using modifier keys such as Shift or Control, the user will hold down the modifier key(s) while striking and releasing another key. However, certain unusual forms of keyboarding may require multiple keys to be struck or held down simultaneously. In particular, some computer games require holding down keys (other than the usual modifier keys) while pressing and releasing other keys.
To reduce cost and design complexity, most conventional keyboards do not isolate all keys independent of each other; instead, they use a matrix of key switches that assumes that only a limited number of keys will be held down at any given time. “N-key rollover” refers to a feature of a keyboard that scans each key completely independently by the keyboard hardware, so that each keypress is correctly detected regardless of how many other keys are being pressed or held down at the time. For example, most keyboards have “3-key rollover” and can reliably detect any three keys used simultaneously. However, if the user holds down three keys and attempts to strike a fourth, the keypress may be ignored or incorrectly interpreted. The inability of a keyboard to correctly detect and interpret simultaneously pressed keys is often referred to as key jamming. Some keyboards, such as keyboard designed for playing computer games, especially games played by multiple players, are designed to handle N-key rollover of 10 keys or more.